package Thread;
//创建两个线程后，线程会并发执行，
// 采用加锁的方法解决线程调度的线程安全的问题
//现在采用新的加锁办法：synchronized修饰方法进行在类的外部实现类解决加锁方法；
class Counter{
    public int count=0;
    public synchronized void add(){
        count++;
    }
    public synchronized int getCount(){
        return count;
    }
}
public class Demo18 {
    public static void main(String[] args) throws InterruptedException {
        Counter counter=new Counter();
        Thread t1=new Thread(()->{
            for(int i=0;i<50000;i++){
                counter.add();
            }
            System.out.println("t1线程结束");
        });
        Thread t2=new Thread(()->{
            for(int i=0;i<50000;i++){
                counter.add();
            }
            System.out.println("t2线程结束");
        });
        t1.start();
        t2.start();
        t1.join();
        t2.join();
        System.out.println("个数为："+counter.getCount());
    }

}
